package ar.com.sectorwine.repository;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Repository;

import ar.com.sectorwine.entities.Parametro;

@Repository
public class ParametrosDAOImpl extends AbstractJpaDAO<Parametro> implements
		ParametrosDAO {

	public ParametrosDAOImpl() {
		setClazz(Parametro.class);
	}

	@Override
	public void agregar(String nombre, List<String> valor) {
		Parametro parametro = new Parametro(nombre, valor);
		save(parametro);
	}

	@Override
	public void eliminar(String nombre) {
		Map<String, String> map = new HashMap<String, String>();
		map.put("nombre", nombre);
		Parametro p = findByAttributes(map).get(0);
		delete(p);
	}

	@Override
	public List<String> getValue(String nombre) {
		Parametro p = findParametro(nombre);
		return p.getValor();
	}

	@Override
	public Parametro findParametro(String nombre) {
		Map<String, String> map = new HashMap<String, String>();
		map.put("nombre", nombre);
		List<Parametro> parametros = findByAttributes(map);
		if (parametros.size() == 1) {
			return parametros.get(0);
		} else {
			return null;
		}
	}

	@Override
	public Parametro modificarParametro(Parametro parametro) {
		update(parametro);
		return parametro;
	}

}
